package pro.shushi.pamirs.boot.web.enmu;

import pro.shushi.pamirs.meta.annotation.Errors;
import pro.shushi.pamirs.meta.common.enmu.ExpBaseEnum;

@Errors(displayName = "视觉启动器错误枚举")
public enum BootUxdExpEnumerate implements ExpBaseEnum {

    SYSTEM_ERROR(ERROR_TYPE.SYSTEM_ERROR, 10019000, "系统异常"),
    BASE_LOAD_MODEL_META_ACTION_DATA_ERROR(ERROR_TYPE.SYSTEM_ERROR, 10019001, "加载行为的元数据失败，系统异常"),
    BASE_LOAD_MODEL_META_MODEL_DATA_ERROR(ERROR_TYPE.SYSTEM_ERROR, 10019002, "加载模型的元数据失败，系统异常"),
    BASE_LOAD_MODULE_META_MENU_DATA_ERROR(ERROR_TYPE.SYSTEM_ERROR, 10019003, "加载模块的菜单元数据失败，系统异常"),
    BASE_LOAD_MODULE_META_MODULE_DATA_ERROR(ERROR_TYPE.SYSTEM_ERROR, 10019004, "加载模块的模块元数据失败，系统异常"),
    BASE_LOAD_MODULE_META_NO_MODULE_NAME_ERROR(ERROR_TYPE.SYSTEM_ERROR, 10019005, "加载模块失败，没有选择要加载的模块"),
    BASE_LOAD_MODEL_MODEL_IS_NULL_ERROR(ERROR_TYPE.SYSTEM_ERROR, 10019006, "加载模型的元数据失败，模型编码不允许为空"),
    BASE_VIEW_ACTION_NOT_EXIST_ERROR(ERROR_TYPE.SYSTEM_ERROR, 11040017, "页面不存在或无权限访问"),
    BASE_VIEW_ACTION_LOAD_PARAM_ERROR(ERROR_TYPE.SYSTEM_ERROR, 10019007, "请求入参错误"),
    BASE_MENU_MODEL_IS_NULL_ERROR(ERROR_TYPE.SYSTEM_ERROR, 10019008, "该菜单未配置跳转模型"),
    BASE_VIEW_MODEL_CONFIG_ERROR(ERROR_TYPE.SYSTEM_ERROR, 10019009, "视图模型配置错误"),
    BASE_ACTION_MODEL_IS_NULL_ERROR(ERROR_TYPE.SYSTEM_ERROR, 10019010, "该动作未配置模型"),
    BASE_ACTION_NAME_IS_NULL_ERROR(ERROR_TYPE.SYSTEM_ERROR, 10019011, "该动作未配置名称"),
    BASE_VIEW_MODEL_IS_NULL_ERROR(ERROR_TYPE.SYSTEM_ERROR, 10019012, "加载视图未配置模型"),
    BASE_VIEW_ACTION_IS_NOT_EXIST_ERROR(ERROR_TYPE.SYSTEM_ERROR, 10019013, "跳转的页面不存在"),
    BASE_ACTION_AUTO_CREATE_TYPE_IS_NULL_ERROR(ERROR_TYPE.SYSTEM_ERROR, 10019014, "为视图创建动作未设置动作类型"),
    BASE_ACTION_AUTO_CREATE_VIEW_TYPE_IS_NULL_ERROR(ERROR_TYPE.SYSTEM_ERROR, 10019015, "为视图创建窗口动作未设置视图类型"),
    BASE_VIEW_REGISTER_ERROR(ERROR_TYPE.SYSTEM_ERROR, 10019016, "注册视图异常"),
    BASE_RES_VIEW_IS_NOT_EXIST_ERROR(ERROR_TYPE.SYSTEM_ERROR, 10019017, "关联视图不存在"),
    BASE_RES_TEMPLATE_IS_NOT_EXIST_ERROR(ERROR_TYPE.SYSTEM_ERROR, 10019018, "关联视图模板不存在"),
    BASE_RES_VIEW_IS_INACTIVE_ERROR(ERROR_TYPE.SYSTEM_ERROR, 10019019, "关联视图无效，请先发布该页面"),
    BASE_MODEL_IS_NOT_EXIST_ERROR(ERROR_TYPE.SYSTEM_ERROR, 10019020, "模型不存在"),
    BASE_APP_CONFIG_PARAM_ERROR(ERROR_TYPE.SYSTEM_ERROR, 10019021, "查询应用配置参数错误"),
    BASE_SAVE_APP_CONFIG_FAIL_ERROR(ERROR_TYPE.SYSTEM_ERROR, 10019022, "创建或更新应用配置参数失败"),
    BASE_SAVE_APP_CONFIG_ERROR(ERROR_TYPE.SYSTEM_ERROR, 10019023, "创建或更新应用配置参数错误"),
    BASE_MODULE_CAN_NOT_ACCESS_ERROR(ERROR_TYPE.SYSTEM_ERROR, 11040035, "无该应用的权限"),
    RESOURCE_PATH_PARSER_ERROR(ERROR_TYPE.SYSTEM_ERROR, 10019024, "无效的资源路径"),
    FUNCTION_NAMESPACE_IS_NULL_ERROR(ERROR_TYPE.SYSTEM_ERROR, 10019025, "函数命名空间不能为空"),
    BASE_VIEW_ACTION_MODEL_CONFIG_ERROR(ERROR_TYPE.SYSTEM_ERROR, 10019026, "跳转动作模型配置不存在"),
    BASE_VIEW_ACTION_MODULE_CONFIG_ERROR(ERROR_TYPE.SYSTEM_ERROR, 10019027, "跳转动作模块配置不存在");

    private final ERROR_TYPE type;

    private final int code;

    private final String msg;

    BootUxdExpEnumerate(ERROR_TYPE type, int code, String msg) {
        this.type = type;
        this.code = code;
        this.msg = msg;
    }

    @Override
    public ERROR_TYPE type() {
        return type;
    }

    @Override
    public int code() {
        return code;
    }

    @Override
    public String msg() {
        return msg;
    }
}
